Tutorial Notes: Reasoning about Logic Programs
نویسنده
چکیده
These are tutorial notes for LPSS-92: the Logic Programming Summer School organised by the CompuLog Esprit Network of Excellence in September 1992. They are an introduction to the techniques of reasoning about logic programs, in particular for synthesizing, verifying, transforming and proving termination of logic programs.
منابع مشابه
Reasoning About Imperative Quantum Programs
A logic for reasoning about states of basic quantum imperative programs is presented. The models of the logic are ensembles obtained by attaching probabilities to pairs of quantum states and classical states. The state logic is used to provide a sound Hoare-style calculus for quantum imperative programs. The calculus is illustrated by proving the correctness of the Deutsch algorithm.
متن کاملSmallfoot: Modular Automatic Assertion Checking with Separation Logic
Separation logic is a program logic for reasoning about programs that manipulate pointer data structures. We describe Smallfoot, a tool for checking certain lightweight separation logic specifications. The assertions describe the shapes of data structures rather than their detailed contents, and this allows reasoning to be fully automatic. The presentation in the paper is tutorial in style. We ...
متن کاملLecture Notes on Sequential Programs and Compositional Reasoning
This lecture will focus on developing systematic logical reasoning principles for sequential programs. Writing programs with correctness specifications is one thing. But proving them to be correct is a different matter. Both are exceedingly useful, because the clear expression of our expectations on a program often already make it more correct as it will more likely occur to us if our expectati...
متن کاملReasoning About Partial Functions in the Formal Development of Programs
Partial functions and operators are used extensively in the formal development of programs and thus development methods have to clarify how to reason about them. There are a number of approaches which cover up the fact that “First Order Predicate Calculus” does not handle undefined logical values. There is also at least one specific “Logic of Partial Functions” (LPF) which tackles the issue at ...
متن کاملExtending Propositional Dynamic Logic for Petri Nets
Lopes, Bruno; Haeusler, Edward Hermann (advisor); Dowek, Gilles (coadvisor). Extending Propositional Dynamic Logic for Petri Nets. Rio de Janeiro, 2014. 101p. D.Sc. Thesis — Departamento de Informática, Pontif́ıcia Universidade Católica do Rio de Janeiro. Propositional Dynamic Logic (PDL) is a multi-modal logic used for specifying and reasoning on sequential programs. Petri Net is a widely used ...
متن کامل